package com.doit.day01;

import org.apache.commons.lang3.RandomUtils;
import redis.clients.jedis.Jedis;

public class _05_消费者 {
    public static void main(String[] args) throws InterruptedException {
        //获取producer这个key里面对应的value的值，放到缓冲区里面去
        Jedis jedis = JedisUtil.getJedis();

        while (true){
            //从producer的右边获取值，然后往cache的左边放
            jedis.rpoplpush("producer","cache");
            //消费cache队列里面的任务
            String popTask = jedis.rpop("cache");
            if (RandomUtils.nextInt(1000,10000) %3 == 0){
                //任务失败了之后，要重新放回到cache中
                jedis.lpush("cache",popTask);
                System.out.println("任务失败，重新放回到缓冲区==》"+popTask);
            }else {
                System.out.println("任务被消费==>"+popTask);
            }
            Thread.sleep(3000);
        }


    }
}
